
cross_section_models
Solar Adoption in DC
Solar panels are currently XXX of the US market, with adoption low.
Renewable Portfolio Standard (RPS) policies are designed to increase uptake of renewable energy.
DC’s RPS is one of the country’s most ambitious,
Policy changes
- Distributed Generation Amendment Act of 2011 (Oct 2011)
- shall not certify any tier one renewable source solar energy system larger than 5 MW in capacity or not in the District
- Renewable Energy Portfolio Standard Amendment Act (Apr 2015)
- Biomass related
- Renewable Portfolio Standard Expansion Amendment Act (Oct. 2016)
- Raised RPS requirements
- Raised ACP trajectory
- Clean Energy DC Omnibus Amendment Act ( March 2022)
- Increased the solar RPS requirements to 5.5% by 2032
- Increased ACP trajectory
What was the actual ratio in 2023?
Consumption is given by PJM STATS CITE. DC generated just 23% of its electricity from solar in 2023.
But there has been tremendous growth.

Sample gganimate code
Show the code
# Animate the plot
anim <- p + transition_reveal(date) +
enter_grow() + # Animation for entering points
exit_fade() + # Animation for exiting points
ease_aes('cubic-in-out') + # Animation speed
labs(title = 'Year: {frame_along}', subtitle = "Tier-One Renewable Percent") # Update title with year
# Render the animation
animate(anim, duration = 10, fps = 30, width = 800, height = 600, renderer =gifski_renderer())DC Open Data - Buildings and solar
With the help of DC Open Data’s frequently updated and granular urban data on buildings, it is straightforward to combine these into the largest single-city datasets for almost all of DC’s 110,000 residential buildings. - CAMA
DC Solar monthly
Note: Linking these two datasets is more complex than a single merge. The common thing is address, but CAMA doesn’t have address directly. It has the Square Suffix Lot (SSL) number, which identifies the plot of land on which a building sits. Some lots have multiple buildings, and some buildings/complexes span multiple lots.
We then have a dataset with the below outline
| SSL | STYLE_D | ROOF_D | NBHDNAME | cap_kw | max_sun_hours | min_dc_kwh |
|---|---|---|---|---|---|---|
| 3978 0019 | 2 Story | Metal- Sms | Brookland | 0 | 1583.277 | 1515.455 |
| 5198W 0020 | 2 Story | Shingle | Deanwood | 0 | 1599.635 | 1585.850 |
| 5390 0810 | Split Foyer | Shingle | Fort Dupont Park | 2.6 | 1470.398 | 1436.796 |
| 5252 0181 | 2 Story | Shingle | Deanwood | 4.68 | 1484.654 | 1441.397 |
| 3782 0055 | 2 Story | Shingle | Brookland | 1.56 | 1623.857 | 1621.908 |
Why is this interesting? If you look at this CITE PAPER - ML can reduce ‘SOFT COSTS’
The DC Solar Market
How much does it cost to install a solar panel on average? Installation cost = $13,000
In a centrally planned economy, the DC Mayor could issue an edict, and armies of government workers would install a solar panel on each roof, and the goal would be met within a week. However, that is not how a free-market democracy works, and we would
A household in DC can factor in four types of incentives available for a solar installation :
- Federal rebate
- SREC
This is an example of a callout with a title.
- Net metering
There is another type of indirect incentive, which might function as a ‘stick’ to the above ‘carrots’. This is the Building Energy Benchmarking Policy (BEPS), which aims to identify and impose financial penalties on large buildings (>10,000 sq feet) with greater than average energy consumption
Two studies have been conducted on the state of solar adoption in Washington DC, by Synapse Energy Economics in 2019 and 2022.
The second study lays out the factors which hinder higher adoption in DC.
- Renters (less than 30% single-family owner-occupied housing)
- Rising ACPs - People will anticipate higher compensation in future, and may delay purchases.
- Electricity prices: Higher electricity and enery prices, or basically that increases energy expenditure will lead people to
The shortfall between SREC supply and RPS requirement gives the revenues to DC DOEE
CITE PAPER - SREC protectionism did increase adoption
Get census data using tidyCensus
Show the code
st_acs <- get_acs(variables = c(total_pop = "B02001_001E",
owner_occupied = "B25003_002E",
total_occupied = "B25003_001E"),
geography = "block group",
geometry = TRUE,
state = "DC",
year = 2019) Aggregate solar data to the block group level
What does data from the American Community Survey tell us, about what these

Ownership correlates with solar adoption.
TODO map layer different
Building level maps
The following shows a simple